#pragma once

#include "stdio.h"
#include "acsi_class.h"
#include "mtree.h"
#include "acsivar.h"
#include <time.h>
#include <QDateTime>
#include <QStringList>
#include <QTime>
#include <QCoreApplication>
#define BOOL_CODE		0x03
#define BITS_CODE		0x04
#define INT_CODE		0x05
#define UINT_CODE		0x06
#define FLOAT_CODE		0x07
#define OCT_CODE		0x09
#define VSTR_CODE		0x0a
#define BTIME_CODE		0x0c
#define UTF8_STR_CODE	0x10
#define UTCTIME_CODE	0x11

class CService
{
public:
    CService();
    virtual ~CService(void);
    virtual void SetVerion(int mainVerion,int subVersion,int releaseNo);
protected:
    virtual void ServiceName();
    virtual void GetVersion();
    virtual void PrintTree(CMTree & tree);
    virtual void PrintVar(CAcsiVar & var);
    virtual void PrintType(int type, int size);
    void ServiceSleep(int ms);
private:
    int m_mainVerion;
    int m_subVersion;
    int m_releaseNo;
    static int mainVer;
};
